<!DOCTYPE html>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>highlight.lgt</title>
<meta name="generator" content="KF5::SyntaxHighlighting (Logtalk)"/>
</head><body style="color:#1f1c1b"><pre>
<span style="color:#898887;">/* </span>
<span style="color:#898887;">   Highlighting test case for Logtalk</span>

<span style="color:#898887;">   Copied from the Logtalk distribution by the Logtalk copright holder</span>
<span style="color:#898887;">   and contributed using the Apache License 2.0</span>
<span style="color:#898887;">*/</span>

:-<span style="font-weight:bold;"> encoding</span>(<span style="color:#006e28;">Encoding</span>).	<span style="color:#898887;">% this is a single-line comment</span>

<span style="color:#898887;">/*</span>
<span style="color:#898887;">this is</span>
<span style="color:#898887;">a block</span>
<span style="color:#898887;">comment</span>
<span style="color:#898887;">*/</span>


:-<span style="font-weight:bold;"> if</span>(<span style="color:#006e28;">Goal</span>).
	<span style="color:#898887;">% conditional</span>
:-<span style="font-weight:bold;"> elif</span>(<span style="color:#006e28;">Goal</span>).
	<span style="color:#898887;">% compilation</span>
:-<span style="font-weight:bold;"> else.</span>
	<span style="color:#898887;">% directives</span>
:-<span style="font-weight:bold;"> endif.</span>


:-<span style="font-weight:bold;"> initialization</span>(<span style="color:#006e28;">Goal</span>).
:-<span style="font-weight:bold;"> op</span>(<span style="color:#006e28;">Precedence</span>, <span style="color:#006e28;">Associativity</span>, <span style="color:#006e28;">Operator</span>).
:-<span style="font-weight:bold;"> ensure_loaded</span>(<span style="color:#006e28;">File</span>).
:-<span style="font-weight:bold;"> include</span>(<span style="color:#006e28;">File</span>).
:-<span style="font-weight:bold;"> set_prolog_flag</span>(<span style="color:#006e28;">Flag</span>, <span style="color:#006e28;">Value</span>).
:-<span style="font-weight:bold;"> set_logtalk_flag</span>(<span style="color:#006e28;">Flag</span>, <span style="color:#006e28;">Value</span>).


:-<span style="font-weight:bold;"> object</span>(prototype,
	<span style="font-weight:bold;">implements</span>(protocol),
	<span style="font-weight:bold;">imports</span>(category),
	<span style="font-weight:bold;">extends</span>(parent)).

	:-<span style="font-weight:bold;"> info</span>([
		version <span style="color:#0057ae;">is</span> <span style="color:#b08000;">1.43</span>,
		author <span style="color:#0057ae;">is</span> <span style="color:#bf0303;">'Paulo Moura'</span>,
		date <span style="color:#0057ae;">is</span> <span style="color:#b08000;">2018</span><span style="color:#0057ae;">/</span><span style="color:#b08000;">08</span><span style="color:#0057ae;">/</span><span style="color:#b08000;">03</span>,
		comment <span style="color:#0057ae;">is</span> <span style="color:#bf0303;">'Sample prototype for testing syntax coloring.'</span>
	]).

	:-<span style="font-weight:bold;"> built_in.</span>
	:-<span style="font-weight:bold;"> threaded.</span>
	:-<span style="font-weight:bold;"> dynamic.</span>
	:-<span style="font-weight:bold;"> initialization</span>(some_goal(<span style="color:#006e28;">X</span>, <span style="color:#006e28;">Y</span>)).

	:-<span style="font-weight:bold;"> alias</span>(set, [member<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span> <span style="color:#0057ae;">as</span> set_member<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>]).
	:-<span style="font-weight:bold;"> alias</span>(words, [singular<span style="color:#0057ae;">//</span><span style="color:#b08000;">0</span> <span style="color:#0057ae;">as</span> peculiar<span style="color:#0057ae;">//</span><span style="color:#b08000;">0</span>]).

	:-<span style="font-weight:bold;"> uses</span>(list, [append<span style="color:#0057ae;">/</span><span style="color:#b08000;">3</span>, member<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>]).
	:-<span style="font-weight:bold;"> uses</span>(queues, [new<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span> <span style="color:#0057ae;">as</span> new_queue<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span>]).

	:-<span style="font-weight:bold;"> use_module</span>(module).
	:-<span style="font-weight:bold;"> use_module</span>(module, [append<span style="color:#0057ae;">/</span><span style="color:#b08000;">3</span>, member<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>]).

	:-<span style="font-weight:bold;"> multifile</span>(zzz<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span>).
	:-<span style="font-weight:bold;"> multifile</span>(module<span style="color:#0057ae;">:</span>zzz<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span>).
	:-<span style="font-weight:bold;"> multifile</span>(object<span style="color:#0057ae;">::</span>zzz<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span>).

	:-<span style="font-weight:bold;"> coinductive</span>(comember<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span>).

	:-<span style="font-weight:bold;"> use_module</span>(module, [xxx<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span>, yyy<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>, zzz<span style="color:#0057ae;">/</span><span style="color:#b08000;">3</span>]).
	:-<span style="font-weight:bold;"> export</span>(bbb<span style="color:#0057ae;">/</span><span style="color:#b08000;">3</span>).
	:-<span style="font-weight:bold;"> reexport</span>(cccc<span style="color:#0057ae;">/</span><span style="color:#b08000;">4</span>).

	:-<span style="font-weight:bold;"> public</span>(aaa<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>).
	:-<span style="font-weight:bold;"> meta_predicate</span>(aaa(<span style="color:#0057ae;">::</span>, <span style="color:#0057ae;">*</span>)).
	:-<span style="font-weight:bold;"> discontiguous</span>(aaa<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>).
	:-<span style="font-weight:bold;"> mode</span>(aaa(<span style="color:#0057ae;">+</span>callable, <span style="color:#0057ae;">?</span>integer), zero_or_one).
	:-<span style="font-weight:bold;"> info</span>(position<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>, [
		comment <span style="color:#0057ae;">is</span> <span style="color:#bf0303;">'Predicate brief description.'</span>,
		arguments <span style="color:#0057ae;">is</span> [<span style="color:#bf0303;">'Arg1'</span><span style="color:#0057ae;">-</span><span style="color:#bf0303;">'Arg1 description'</span>, <span style="color:#bf0303;">'Arg2'</span><span style="color:#0057ae;">-</span><span style="color:#bf0303;">'Arg2 description'</span>]
	]).

	:-<span style="font-weight:bold;"> public</span>(nt<span style="color:#0057ae;">//</span><span style="color:#b08000;">2</span>).
	:-<span style="font-weight:bold;"> meta_non_terminal</span>(nt(<span style="color:#b08000;">1</span>, <span style="color:#0057ae;">*</span>)).

	:-<span style="font-weight:bold;"> protected</span>(bbb<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>).
	:-<span style="font-weight:bold;"> synchronized</span>(bbb<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>).
	:-<span style="font-weight:bold;"> mode</span>(bbb(<span style="color:#0057ae;">+</span>integer, <span style="color:#0057ae;">-</span>float), one).
	:-<span style="font-weight:bold;"> info</span>(bbb<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>, [
		comment <span style="color:#0057ae;">is</span> <span style="color:#bf0303;">'Predicate brief description.'</span>,
		argnames <span style="color:#0057ae;">is</span> [<span style="color:#bf0303;">'Arg1'</span>, <span style="color:#bf0303;">'Arg2'</span>]
	]).

	:-<span style="font-weight:bold;"> private</span>(ccc<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>).
	:-<span style="font-weight:bold;"> dynamic</span>(ccc<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>).
	:-<span style="font-weight:bold;"> mode</span>(ccc(<span style="color:#0057ae;">@</span>atom, <span style="color:#0057ae;">?</span>atom, <span style="color:#0057ae;">++</span>list, <span style="color:#0057ae;">--</span>ground), one_or_more).
	:-<span style="font-weight:bold;"> info</span>(ccc<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>, [
		comment <span style="color:#0057ae;">is</span> <span style="color:#bf0303;">'Predicate brief description.'</span>,
		argnames <span style="color:#0057ae;">is</span> [<span style="color:#bf0303;">'Arg1'</span>, <span style="color:#bf0303;">'Arg2'</span>]
	]).

	enumerating_entities(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Protocol</span>, <span style="color:#006e28;">Category</span>) <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">current_category</span>(<span style="color:#006e28;">Category</span>),
		<span style="color:#644a9b;">current_object</span>(<span style="color:#006e28;">Object</span>),
		<span style="color:#644a9b;">current_protocol</span>(<span style="color:#006e28;">Protocol</span>).

	enumerating_properties <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">category_property</span>(<span style="color:#006e28;">Category</span>, <span style="color:#006e28;">Property</span>),
		<span style="color:#644a9b;">object_property</span>(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Property</span>),
		<span style="color:#644a9b;">protocol_property</span>(<span style="color:#006e28;">Protocol</span>, <span style="color:#006e28;">Property</span>).

	creating_entities(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Protocol</span>, <span style="color:#006e28;">Category</span>) <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">create_category</span>(<span style="color:#006e28;">Category</span>, <span style="color:#006e28;">Relations</span>, <span style="color:#006e28;">Directives</span>, <span style="color:#006e28;">Clauses</span>),
		<span style="color:#644a9b;">create_object</span>(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Relations</span>, <span style="color:#006e28;">Directives</span>, <span style="color:#006e28;">Clauses</span>),
		<span style="color:#644a9b;">create_protocol</span>(<span style="color:#006e28;">Protocol</span>, <span style="color:#006e28;">Relations</span>, <span style="color:#006e28;">Directives</span>).

	abolishing_entities(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Protocol</span>, <span style="color:#006e28;">Category</span>) <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">abolish_category</span>(<span style="color:#006e28;">Category</span>),
		<span style="color:#644a9b;">abolish_object</span>(<span style="color:#006e28;">Object</span>),
		<span style="color:#644a9b;">abolish_protocol</span>(<span style="color:#006e28;">Protocol</span>).

	entity_relations <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">extends_object</span>(<span style="color:#006e28;">Prototype</span>, <span style="color:#006e28;">Parent</span>, <span style="color:#006e28;">Scope</span>),
		<span style="color:#644a9b;">extends_protocol</span>(<span style="color:#006e28;">Protocol1</span>, <span style="color:#006e28;">Protocol2</span>, <span style="color:#006e28;">Scope</span>),
		<span style="color:#644a9b;">extends_category</span>(<span style="color:#006e28;">Category1</span>, <span style="color:#006e28;">Category2</span>, <span style="color:#006e28;">Scope</span>),
		<span style="color:#644a9b;">implements_protocol</span>(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Protocol</span>, <span style="color:#006e28;">Scope</span>),
		<span style="color:#644a9b;">imports_category</span>(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Category</span>, <span style="color:#006e28;">Scope</span>),
		<span style="color:#644a9b;">instantiates_class</span>(<span style="color:#006e28;">Instance</span>, <span style="color:#006e28;">Class</span>, <span style="color:#006e28;">Scope</span>),
		<span style="color:#644a9b;">specializes_class</span>(<span style="color:#006e28;">Class</span>, <span style="color:#006e28;">Superclass</span>, <span style="color:#006e28;">Scope</span>),
		<span style="color:#644a9b;">complements_object</span>(<span style="color:#006e28;">Category</span>, <span style="color:#006e28;">Object</span>),
		<span style="color:#644a9b;">conforms_to_protocol</span>(<span style="color:#006e28;">ObjOrCtg</span>, <span style="color:#006e28;">Protocol</span>, <span style="color:#006e28;">Scope</span>).

	event_handling <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">abolish_events</span>(<span style="color:#006e28;">Event</span>, <span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Message</span>, <span style="color:#006e28;">Sender</span>, <span style="color:#006e28;">Monitor</span>),
		<span style="color:#644a9b;">current_event</span>(<span style="color:#006e28;">Event</span>, <span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Message</span>, <span style="color:#006e28;">Sender</span>, <span style="color:#006e28;">Monitor</span>),
		<span style="color:#644a9b;">define_events</span>(<span style="color:#006e28;">Event</span>, <span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Message</span>, <span style="color:#006e28;">Sender</span>, <span style="color:#006e28;">Monitor</span>).

	multi_threading <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">threaded</span>(<span style="color:#006e28;">Goals</span>),
		<span style="color:#644a9b;">threaded_call</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">threaded_once</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">threaded_ignore</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">threaded_exit</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">threaded_peek</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">threaded_wait</span>(<span style="color:#006e28;">Notification</span>),
		<span style="color:#644a9b;">threaded_notify</span>(<span style="color:#006e28;">Notification</span>).

	engines <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">threaded_engine</span>(<span style="color:#006e28;">Engine</span>),
		<span style="color:#644a9b;">threaded_engine_create</span>(<span style="color:#006e28;">AnswerTemplate</span>, <span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">Engine</span>),
		<span style="color:#644a9b;">threaded_engine_destroy</span>(<span style="color:#006e28;">Engine</span>),
		<span style="color:#644a9b;">threaded_engine_self</span>(<span style="color:#006e28;">Engine</span>),
		<span style="color:#644a9b;">threaded_engine_next</span>(<span style="color:#006e28;">Engine</span>, <span style="color:#006e28;">Answer</span>),
		<span style="color:#644a9b;">threaded_engine_next_reified</span>(<span style="color:#006e28;">Engine</span>, <span style="color:#006e28;">Answer</span>),
		<span style="color:#644a9b;">threaded_engine_yield</span>(<span style="color:#006e28;">Answer</span>),
		<span style="color:#644a9b;">threaded_engine_post</span>(<span style="color:#006e28;">Engine</span>, <span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">threaded_engine_fetch</span>(<span style="color:#006e28;">Term</span>).

	compiling_and_loading <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">logtalk_compile</span>(<span style="color:#006e28;">File</span>, <span style="color:#006e28;">Options</span>),
		<span style="color:#644a9b;">logtalk_load</span>(<span style="color:#006e28;">File</span>, <span style="color:#006e28;">Options</span>),
		<span style="color:#644a9b;">logtalk_library_path</span>(<span style="color:#006e28;">Library</span>, <span style="color:#006e28;">Path</span>),
		<span style="color:#644a9b;">logtalk_load_context</span>(<span style="color:#006e28;">Key</span>, <span style="color:#006e28;">Value</span>),
		<span style="color:#644a9b;">logtalk_make</span>(<span style="color:#006e28;">Action</span>),
		<span style="color:#644a9b;">logtalk_make</span>,
		<span style="color:#644a9b;">logtalk_make_target_action</span>(<span style="color:#006e28;">Target</span>).

	flags <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">current_logtalk_flag</span>(<span style="color:#006e28;">Flag</span>, <span style="color:#006e28;">Value</span>),
		<span style="color:#644a9b;">set_logtalk_flag</span>(<span style="color:#006e28;">Flag</span>, <span style="color:#006e28;">Value</span>),
		<span style="color:#644a9b;">create_logtalk_flag</span>(<span style="color:#006e28;">Flag</span>, <span style="color:#006e28;">Value</span>, <span style="color:#006e28;">Options</span>).

	execution_context_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">context</span>(<span style="color:#006e28;">Context</span>),
		<span style="color:#644a9b;">parameter</span>(<span style="color:#006e28;">N</span>, <span style="color:#006e28;">Parameter</span>),
		<span style="color:#644a9b;">self</span>(<span style="color:#006e28;">Self</span>),
		<span style="color:#644a9b;">sender</span>(<span style="color:#006e28;">Sender</span>),
		<span style="color:#644a9b;">this</span>(<span style="color:#006e28;">This</span>).

	reflection_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">current_predicate</span>(<span style="color:#006e28;">Predicate</span>),
		<span style="color:#644a9b;">predicate_property</span>(<span style="color:#006e28;">Predicate</span>, <span style="color:#006e28;">Property</span>).

	database_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">abolish</span>(<span style="color:#006e28;">Name</span><span style="color:#0057ae;">/</span><span style="color:#006e28;">Arity</span>),
		<span style="color:#644a9b;">asserta</span>(<span style="color:#006e28;">Clause</span>),
		<span style="color:#644a9b;">assertz</span>(<span style="color:#006e28;">Clause</span>),
		<span style="color:#644a9b;">clause</span>(<span style="color:#006e28;">Head</span>, <span style="color:#006e28;">Body</span>),
		<span style="color:#644a9b;">retract</span>(<span style="color:#006e28;">Clause</span>),
		<span style="color:#644a9b;">retractall</span>(<span style="color:#006e28;">Head</span>).

	exception_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">catch</span>(<span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">Error</span>, <span style="color:#006e28;">Catcher</span>),
		<span style="color:#644a9b;">throw</span>(<span style="color:#006e28;">Error</span>),
		<span style="color:#644a9b;">instantiation_error</span>,
		<span style="color:#644a9b;">type_error</span>(<span style="color:#006e28;">Type</span>, <span style="color:#006e28;">Culprit</span>),
		<span style="color:#644a9b;">domain_error</span>(<span style="color:#006e28;">Domain</span>, <span style="color:#006e28;">Culprit</span>),
		<span style="color:#644a9b;">existence_error</span>(<span style="color:#006e28;">Thing</span>, <span style="color:#006e28;">Culprit</span>),
		<span style="color:#644a9b;">permission_error</span>(<span style="color:#006e28;">Operation</span>, <span style="color:#006e28;">Permission</span>, <span style="color:#006e28;">Culprit</span>),
		<span style="color:#644a9b;">representation_error</span>(<span style="color:#006e28;">Flag</span>),
		<span style="color:#644a9b;">evaluation_error</span>(<span style="color:#006e28;">Exception</span>),
		<span style="color:#644a9b;">resource_error</span>(<span style="color:#006e28;">Resource</span>),
		<span style="color:#644a9b;">syntax_error</span>(<span style="color:#006e28;">Description</span>),
		<span style="color:#644a9b;">system_error</span>.

	all_solutions_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">bagof</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">List</span>),
		<span style="color:#644a9b;">bagof</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Var</span><span style="color:#0057ae;">^</span><span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">List</span>),
		<span style="color:#644a9b;">findall</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">List</span>),
		<span style="color:#644a9b;">forall</span>(<span style="color:#006e28;">Generate</span>, <span style="color:#006e28;">Test</span>),
		<span style="color:#644a9b;">setof</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">List</span>),
		<span style="color:#644a9b;">setof</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Var1</span><span style="color:#0057ae;">^</span><span style="color:#006e28;">Var2</span><span style="color:#0057ae;">^</span><span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">List</span>).

	event_handler_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">before</span>(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Message</span>, <span style="color:#006e28;">Sender</span>),
		<span style="color:#644a9b;">after</span>(<span style="color:#006e28;">Object</span>, <span style="color:#006e28;">Message</span>, <span style="color:#006e28;">Sender</span>).

	message_forwarding_method <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">forward</span>(<span style="color:#006e28;">Message</span>).

	dcg_rules_parsing_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">phrase</span>(<span style="color:#006e28;">NonTerminal</span>, <span style="color:#006e28;">Input</span>, <span style="color:#006e28;">Rest</span>).

	term_expansion_methods <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">expand_term</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Expanded</span>),
		<span style="color:#644a9b;">expand_goal</span>(<span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">Expanded</span>),
		<span style="color:#644a9b;">term_expansion</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Expanded</span>),
		<span style="color:#644a9b;">goal_expansion</span>(<span style="color:#006e28;">Goal</span>, <span style="color:#006e28;">Expanded</span>).

	message_sending <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">Object</span><span style="color:#0057ae;">::</span><span style="color:#006e28;">Message</span>,
		<span style="color:#0057ae;">::</span><span style="color:#006e28;">Message</span>,
		<span style="color:#0057ae;">^^</span><span style="color:#006e28;">Message</span>.

	calling_external_code <span style="color:#0057ae;">:-</span>
		<span style="color:#0057ae;">{</span>goal1, goal2, goal3<span style="color:#0057ae;">}</span>.

	context_switching_calls <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">Object</span><span style="color:#0057ae;">&lt;&lt;</span><span style="color:#006e28;">Goal</span>.

	lambda_expressions <span style="color:#0057ae;">:-</span>
		<span style="color:#0057ae;">{</span><span style="color:#006e28;">X</span>,<span style="color:#006e28;">Y</span>,<span style="color:#006e28;">Z</span><span style="color:#0057ae;">}/</span>[<span style="color:#006e28;">P</span>,<span style="color:#006e28;">Q</span>]<span style="color:#0057ae;">&gt;&gt;</span><span style="color:#006e28;">Goal</span>.

	explicitly_qualified_module_calls <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">Module</span><span style="color:#0057ae;">:</span><span style="color:#006e28;">Goal</span>.

	if_then_else <span style="color:#0057ae;">:-</span>
		(	<span style="color:#006e28;">If</span> <span style="color:#0057ae;">-&gt;</span>
			<span style="color:#006e28;">Then</span>
		<span style="color:#0057ae;">;</span>	<span style="color:#006e28;">Else</span>
		).

	numbers <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">X1</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">13</span>, <span style="color:#006e28;">X2</span> <span style="color:#0057ae;">is</span> <span style="color:#0057ae;">-</span><span style="color:#b08000;">13</span>, <span style="color:#006e28;">X3</span> <span style="color:#0057ae;">is</span> <span style="color:#0057ae;">+</span><span style="color:#b08000;">13</span>,
		<span style="color:#006e28;">Y1</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">13.13</span>, <span style="color:#006e28;">Y2</span> <span style="color:#0057ae;">is</span> <span style="color:#0057ae;">-</span><span style="color:#b08000;">13.13</span>, <span style="color:#006e28;">Y3</span> <span style="color:#0057ae;">is</span> <span style="color:#0057ae;">+</span><span style="color:#b08000;">13.13</span>,
		<span style="color:#006e28;">Z1</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">13.13e-23</span>, <span style="color:#006e28;">Z2</span> <span style="color:#0057ae;">is</span> <span style="color:#0057ae;">-</span><span style="color:#b08000;">13.13e-23</span>, <span style="color:#006e28;">Z3</span> <span style="color:#0057ae;">is</span> <span style="color:#0057ae;">+</span><span style="color:#b08000;">13.13e-23</span>,
		<span style="color:#006e28;">C1</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'A</span>, <span style="color:#006e28;">C2</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0''</span>, <span style="color:#006e28;">C3</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'&quot;</span>, <span style="color:#006e28;">C4</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'%</span>,
		<span style="color:#006e28;">C5</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'\n</span>, <span style="color:#006e28;">C6</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'\\</span>, <span style="color:#006e28;">C7</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'\'</span>, <span style="color:#006e28;">C8</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'\&quot;</span>, <span style="color:#006e28;">C9</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0'\`</span>,
		<span style="color:#006e28;">B1</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0b1011101</span>,
		<span style="color:#006e28;">O1</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0o1234560</span>,
		<span style="color:#006e28;">H1</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">0x1234567890abcDEF</span>.

	functions <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">A</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">atan</span>(<span style="color:#b08000;">3.14</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">atan2</span>(<span style="color:#b08000;">1</span>, <span style="color:#b08000;">0</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">acos</span>(<span style="color:#b08000;">0.5</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">asin</span>(<span style="color:#b08000;">0.5</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">sin</span>(<span style="color:#b08000;">0.77</span>) <span style="color:#0057ae;">-</span> <span style="color:#644a9b;">cos</span>(<span style="color:#b08000;">123.23</span>) <span style="color:#0057ae;">-</span> <span style="color:#644a9b;">tan</span>(<span style="color:#b08000;">0.33</span>),
		<span style="color:#006e28;">B</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">sign</span>(<span style="color:#0057ae;">-</span><span style="color:#b08000;">12</span>) <span style="color:#0057ae;">*</span> <span style="color:#644a9b;">abs</span>(<span style="color:#b08000;">35</span><span style="color:#0057ae;">/</span><span style="color:#b08000;">78</span>),
		<span style="color:#006e28;">C</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">truncate</span>(<span style="color:#b08000;">3.14</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">round</span>(<span style="color:#0057ae;">-</span><span style="color:#b08000;">7.8</span>) <span style="color:#0057ae;">-</span> <span style="color:#644a9b;">ceiling</span>(<span style="color:#b08000;">111.88</span>),
		<span style="color:#006e28;">D</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">exp</span>(<span style="color:#b08000;">3.8</span>) <span style="color:#0057ae;">-</span> <span style="color:#644a9b;">log</span>(<span style="color:#b08000;">123.98</span>) <span style="color:#0057ae;">/</span> <span style="color:#644a9b;">sqrt</span>(<span style="color:#b08000;">33</span>) <span style="color:#0057ae;">*</span> <span style="color:#b08000;">23</span> <span style="color:#0057ae;">**</span> <span style="color:#b08000;">4</span> <span style="color:#0057ae;">+</span> <span style="color:#b08000;">12345</span><span style="color:#0057ae;">^</span><span style="color:#b08000;">2</span>,
		<span style="color:#006e28;">E</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">rem</span>(<span style="color:#b08000;">3</span>, <span style="color:#b08000;">2</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">mod</span>(<span style="color:#b08000;">5</span>, <span style="color:#b08000;">3</span>) <span style="color:#0057ae;">-</span> <span style="color:#644a9b;">div</span>(<span style="color:#b08000;">8</span>, <span style="color:#b08000;">4</span>) <span style="color:#0057ae;">*</span> <span style="color:#b08000;">2</span> <span style="color:#0057ae;">rem</span> <span style="color:#b08000;">2</span> <span style="color:#0057ae;">//</span> <span style="color:#b08000;">5</span> <span style="color:#0057ae;">mod</span> <span style="color:#b08000;">3</span> <span style="color:#0057ae;">-</span> <span style="color:#b08000;">8</span> <span style="color:#0057ae;">div</span> <span style="color:#b08000;">4</span> <span style="color:#0057ae;">+</span> <span style="color:#0057ae;">pi</span> <span style="color:#0057ae;">*</span> <span style="color:#0057ae;">e</span>,
		<span style="color:#006e28;">F</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">float_fractional_part</span>(<span style="color:#b08000;">3.14</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">float_integer_part</span>(<span style="color:#b08000;">3.14</span>),
		<span style="color:#006e28;">G</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">float</span>(<span style="color:#b08000;">33</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">floor</span>(<span style="color:#b08000;">99.99</span>),
		<span style="color:#006e28;">I</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">min</span>(<span style="color:#b08000;">3</span>,<span style="color:#b08000;">4</span>) <span style="color:#0057ae;">+</span> <span style="color:#644a9b;">max</span>(<span style="color:#b08000;">4</span>,<span style="color:#b08000;">5</span>).

	bitwise <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">A</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">16</span> <span style="color:#0057ae;">&gt;&gt;</span> <span style="color:#b08000;">2</span>,
		<span style="color:#006e28;">B</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">16</span> <span style="color:#0057ae;">&lt;&lt;</span> <span style="color:#b08000;">2</span>,
		<span style="color:#006e28;">C</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">10</span> <span style="color:#0057ae;">/\</span> <span style="color:#b08000;">12</span>,
		<span style="color:#006e28;">D</span> <span style="color:#0057ae;">is</span> <span style="color:#b08000;">10</span> <span style="color:#0057ae;">\/</span> <span style="color:#b08000;">12</span>,
		<span style="color:#006e28;">E</span> <span style="color:#0057ae;">is</span> \ <span style="color:#b08000;">10</span>,
		<span style="color:#006e28;">F</span> <span style="color:#0057ae;">is</span> <span style="color:#644a9b;">xor</span>(<span style="color:#b08000;">13</span>, <span style="color:#b08000;">7</span>).

	term_unification <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">=</span> <span style="color:#006e28;">Term2</span>,
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">\=</span> <span style="color:#006e28;">Term2</span>,
		<span style="color:#644a9b;">unify_with_occurs_check</span>(<span style="color:#006e28;">Term1</span>, <span style="color:#006e28;">Term2</span>),
		<span style="color:#644a9b;">subsumes_term</span>(<span style="color:#006e28;">General</span>, <span style="color:#006e28;">Specific</span>).

	term_testing <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">atom</span>(<span style="color:#006e28;">Atom</span>),
		<span style="color:#644a9b;">atomic</span>(<span style="color:#006e28;">Atomic</span>),
		<span style="color:#644a9b;">integer</span>(<span style="color:#006e28;">Integer</span>),
		<span style="color:#644a9b;">float</span>(<span style="color:#006e28;">Float</span>),
		<span style="color:#644a9b;">callable</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">compound</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">nonvar</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">var</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">number</span>(<span style="color:#006e28;">Number</span>),
		<span style="color:#644a9b;">ground</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">acyclic_term</span>(<span style="color:#006e28;">Term</span>).

	term_comparison <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">compare</span>(<span style="color:#006e28;">Order</span>, <span style="color:#006e28;">Term1</span>, <span style="color:#006e28;">Term2</span>),
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">==</span> <span style="color:#006e28;">Term2</span>,
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">\==</span> <span style="color:#006e28;">Term2</span>,
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">@&lt;</span> <span style="color:#006e28;">Term2</span>,
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">@=&lt;</span> <span style="color:#006e28;">Term2</span>,
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">@&gt;=</span> <span style="color:#006e28;">Term2</span>,
		<span style="color:#006e28;">Term1</span> <span style="color:#0057ae;">@&gt;</span> <span style="color:#006e28;">Term2</span>.

	term_creation_and_decomposition <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">functor</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Name</span>, <span style="color:#006e28;">Arity</span>),
		<span style="color:#644a9b;">arg</span>(<span style="color:#006e28;">N</span>, <span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Arg</span>),
		<span style="color:#006e28;">Term</span> <span style="color:#0057ae;">=..</span> [<span style="color:#006e28;">Functor</span>| <span style="color:#006e28;">Args</span>],
		<span style="color:#644a9b;">copy_term</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Copy</span>),
		<span style="color:#644a9b;">numbervars</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Start</span>, <span style="color:#006e28;">End</span>),
		<span style="color:#644a9b;">term_variables</span>(<span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Variables</span>).

	arithemtic_evaluation <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">X</span> <span style="color:#0057ae;">is</span> <span style="color:#006e28;">Expression</span>.

	arithemtic_comparison <span style="color:#0057ae;">:-</span>
		<span style="color:#006e28;">Exp1</span> <span style="color:#0057ae;">=:=</span> <span style="color:#006e28;">Exp2</span>,
		<span style="color:#006e28;">Exp1</span> <span style="color:#0057ae;">=\=</span> <span style="color:#006e28;">Exp2</span>,
		<span style="color:#006e28;">Exp1</span> <span style="color:#0057ae;">&lt;</span> <span style="color:#006e28;">Exp2</span>,
		<span style="color:#006e28;">Exp1</span> <span style="color:#0057ae;">=&lt;</span> <span style="color:#006e28;">Exp2</span>,
		<span style="color:#006e28;">Exp1</span> <span style="color:#0057ae;">&gt;</span> <span style="color:#006e28;">Exp2</span>,
		<span style="color:#006e28;">Exp1</span> <span style="color:#0057ae;">&gt;=</span> <span style="color:#006e28;">Exp2</span>.

	stream_selection_and_control <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">current_input</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">current_output</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">set_input</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">set_output</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">open</span>(<span style="color:#006e28;">Source</span>, <span style="color:#006e28;">Mode</span>, <span style="color:#006e28;">Stream</span>, <span style="color:#006e28;">Options</span>),
		<span style="color:#644a9b;">close</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">flush_output</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">stream_property</span>(<span style="color:#006e28;">Stream</span>, <span style="color:#006e28;">Property</span>),
		<span style="color:#644a9b;">at_end_of_stream</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">set_stream_position</span>(<span style="color:#006e28;">Stream</span>, <span style="color:#006e28;">Position</span>),
		<span style="color:#644a9b;">flush_output</span>,
		<span style="color:#644a9b;">at_end_of_stream</span>.

	character_input_output <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">get_char</span>(<span style="color:#006e28;">Char</span>),
		<span style="color:#644a9b;">get_code</span>(<span style="color:#006e28;">Code</span>),
		<span style="color:#644a9b;">peek_char</span>(<span style="color:#006e28;">Char</span>),
		<span style="color:#644a9b;">peek_code</span>(<span style="color:#006e28;">Code</span>),
		<span style="color:#644a9b;">put_char</span>(<span style="color:#006e28;">Char</span>),
		<span style="color:#644a9b;">put_code</span>(<span style="color:#006e28;">Code</span>),
		<span style="color:#644a9b;">nl</span>(<span style="color:#006e28;">Stream</span>),
		<span style="color:#644a9b;">nl</span>.

	byte_input_output <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">get_byte</span>(<span style="color:#006e28;">Byte</span>),
		<span style="color:#644a9b;">peek_byte</span>(<span style="color:#006e28;">Byte</span>),
		<span style="color:#644a9b;">put_byte</span>(<span style="color:#006e28;">Byte</span>).

	term_input_output <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">read</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">read_term</span>(<span style="color:#006e28;">Stream</span>, <span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Options</span>),
		<span style="color:#644a9b;">write</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">write</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">write_canonical</span>(<span style="color:#006e28;">Term</span>),
		<span style="color:#644a9b;">write_term</span>(<span style="color:#006e28;">Stream</span>, <span style="color:#006e28;">Term</span>, <span style="color:#006e28;">Options</span>),
		<span style="color:#644a9b;">current_op</span>(<span style="color:#006e28;">Precedence</span>, <span style="color:#006e28;">Associativity</span>, <span style="color:#006e28;">Operator</span>),
		<span style="color:#644a9b;">op</span>(<span style="color:#006e28;">Precedence</span>, <span style="color:#006e28;">Associativity</span>, <span style="color:#006e28;">Operator</span>),
		<span style="color:#644a9b;">current_char_conversion</span>(<span style="color:#006e28;">InChar</span>, <span style="color:#006e28;">OutChar</span>),
		<span style="color:#644a9b;">char_conversion</span>(<span style="color:#006e28;">InChar</span>, <span style="color:#006e28;">OutChar</span>).

	logic_and_control <span style="color:#0057ae;">:-</span>
		<span style="color:#0057ae;">\+</span> <span style="color:#006e28;">Goal</span>,
		<span style="color:#644a9b;">call</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">once</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">ignore</span>(<span style="color:#006e28;">Goal</span>),
		<span style="color:#644a9b;">true</span>,
		<span style="color:#644a9b;">fail</span>,
		<span style="color:#644a9b;">false</span>,
		<span style="color:#644a9b;">repeat</span>,
		<span style="color:#0057ae;">!</span>.

	atomic_term_processing <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">atom_length</span>(<span style="color:#006e28;">Atom</span>, <span style="color:#006e28;">Length</span>),
		<span style="color:#644a9b;">atom_chars</span>(<span style="color:#006e28;">Atom</span>, <span style="color:#006e28;">Chars</span>),
		<span style="color:#644a9b;">atom_codes</span>(<span style="color:#006e28;">Atom</span>, <span style="color:#006e28;">Codes</span>),
		<span style="color:#644a9b;">atom_concat</span>(<span style="color:#006e28;">Atom1</span>, <span style="color:#006e28;">Atom2</span>, <span style="color:#006e28;">Atom</span>),
		<span style="color:#644a9b;">sub_atom</span>(<span style="color:#006e28;">Atom</span>, <span style="color:#006e28;">Before</span>, <span style="color:#006e28;">Length</span>, <span style="color:#006e28;">After</span>, <span style="color:#006e28;">SubAtom</span>),
		<span style="color:#644a9b;">char_code</span>(<span style="color:#006e28;">Char</span>, <span style="color:#006e28;">Code</span>),
		<span style="color:#644a9b;">number_chars</span>(<span style="color:#006e28;">Number</span>, <span style="color:#006e28;">Chars</span>),
		<span style="color:#644a9b;">number_codes</span>(<span style="color:#006e28;">Number</span>, <span style="color:#006e28;">Codes</span>).

	implementation_defined_hooks <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">current_prolog_flag</span>(<span style="color:#006e28;">Flag</span>, <span style="color:#006e28;">Value</span>),
		<span style="color:#644a9b;">set_prolog_flag</span>(<span style="color:#006e28;">Flag</span>, <span style="color:#006e28;">Value</span>),
		<span style="color:#644a9b;">halt</span>(<span style="color:#006e28;">ExitCode</span>),
		<span style="color:#644a9b;">halt</span>.

	sorting <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">keysort</span>(<span style="color:#006e28;">List</span>, <span style="color:#006e28;">Sorted</span>),
		<span style="color:#644a9b;">sort</span>(<span style="color:#006e28;">List</span>, <span style="color:#006e28;">Sorted</span>).

	<span style="color:#644a9b;">number</span>(<span style="color:#006e28;">C</span>) <span style="color:#0057ae;">--&gt;</span> <span style="color:#bf0303;">&quot;+&quot;</span>, <span style="color:#644a9b;">number</span>(<span style="color:#006e28;">C</span>).
	<span style="color:#644a9b;">number</span>(<span style="color:#006e28;">C</span>) <span style="color:#0057ae;">--&gt;</span> <span style="color:#bf0303;">&quot;-&quot;</span>, <span style="color:#644a9b;">number</span>(<span style="color:#006e28;">X</span>), <span style="color:#0057ae;">{</span><span style="color:#006e28;">C</span> <span style="color:#0057ae;">is</span> <span style="color:#0057ae;">-</span><span style="color:#006e28;">X</span><span style="color:#0057ae;">}</span>.
	<span style="color:#644a9b;">number</span>(<span style="color:#006e28;">X</span>) <span style="color:#0057ae;">--&gt;</span> [<span style="color:#006e28;">C</span>], <span style="color:#0057ae;">{</span><span style="color:#b08000;">0'0</span> <span style="color:#0057ae;">=&lt;</span> <span style="color:#006e28;">C</span>, <span style="color:#006e28;">C</span> <span style="color:#0057ae;">=&lt;</span> <span style="color:#b08000;">0'9</span>, <span style="color:#006e28;">X</span> <span style="color:#0057ae;">is</span> <span style="color:#006e28;">C</span> <span style="color:#0057ae;">-</span> <span style="color:#b08000;">0'0</span><span style="color:#0057ae;">}</span>.

	escape_sequences <span style="color:#0057ae;">:-</span>
		<span style="color:#644a9b;">write</span>(<span style="color:#bf0303;">'Quoted atom with a quote ('') inside.'</span>),
		<span style="color:#644a9b;">write</span>(<span style="color:#bf0303;">'Quoted atom with a backslash (\\) inside.'</span>),
		<span style="color:#644a9b;">write</span>(<span style="color:#bf0303;">'Quoted atom with control escape sequences: \a \b \r \f \t \n \v'</span>),
		<span style="color:#644a9b;">write</span>(<span style="color:#bf0303;">'Quoted atom with an octal escape sequence: \123\.'</span>),
		<span style="color:#644a9b;">write</span>(<span style="color:#bf0303;">'Quoted atom with an hexadecimal escape sequence: \x123f\.'</span>).

:-<span style="font-weight:bold;"> end_object.</span>


:-<span style="font-weight:bold;"> object</span>(class,
	<span style="font-weight:bold;">implements</span>(protected<span style="color:#0057ae;">::</span>protocol),
	<span style="font-weight:bold;">imports</span>(private<span style="color:#0057ae;">::</span>category),
	<span style="font-weight:bold;">instantiates</span>(metaclass),
	<span style="font-weight:bold;">specializes</span>(superclass)).

:-<span style="font-weight:bold;"> end_object.</span>


:-<span style="font-weight:bold;"> object</span>(parametric(<span style="color:#006e28;">Parameter</span>, <span style="color:#bf0303;">&quot;String&quot;</span>, <span style="color:#b08000;">33.78</span>),
	<span style="font-weight:bold;">implements</span>(protocol),
	<span style="font-weight:bold;">imports</span>(category),
	<span style="font-weight:bold;">extends</span>(parent(<span style="color:#006e28;">Parameter</span>))).

:-<span style="font-weight:bold;"> end_object.</span>


:-<span style="font-weight:bold;"> category</span>(category,
	<span style="font-weight:bold;">implements</span>(protocol),
	<span style="font-weight:bold;">extends</span>(other_category)).

:-<span style="font-weight:bold;"> end_category.</span>


:-<span style="font-weight:bold;"> protocol</span>(extended,
	<span style="font-weight:bold;">extends</span>(minimal)).

:-<span style="font-weight:bold;"> end_protocol.</span>


:-<span style="font-weight:bold;"> module</span>(module, [foo<span style="color:#0057ae;">/</span><span style="color:#b08000;">1</span>, bar<span style="color:#0057ae;">/</span><span style="color:#b08000;">2</span>]).

:-<span style="font-weight:bold;"> use_module</span>(library).
:-<span style="font-weight:bold;"> use_module</span>(library, [baz<span style="color:#0057ae;">/</span><span style="color:#b08000;">3</span>]).

:-<span style="font-weight:bold;"> reexport</span>(library).
:-<span style="font-weight:bold;"> reexport</span>(library, [qux<span style="color:#0057ae;">/</span><span style="color:#b08000;">4</span>]).

:-<span style="font-weight:bold;"> export</span>(quux<span style="color:#0057ae;">/</span><span style="color:#b08000;">5</span>).
</pre></body></html>
